/*Colors*/
.dark-grey-color {
  color: #2C3A4B;
}
.medium-grey-color {
  color: #4B6176;
}
.light-grey-color {
  color: #5E82A5;
}
.white-color {
  color: #fff;
}
.divider {
  width: 100%;
  padding: 15px 0;
}
.divider .divider-line-dark {
  width: 10%;
  height: 2px;
  background-color: #2C3A4B;
}
.divider .divider-line-white {
  width: 10%;
  height: 2px;
  background-color: #fff;
}
/*Components*/
.header-page {
  background-color: #424e5d;
  padding: 80px 0;
  position: relative;
}
.header-page .overlayer {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #434f5e url(../images/textura-bg.jpg);
  background-size: cover;
  background-blend-mode: overlay;
  opacity: 0.15;
  z-index: 1;
}
.header-page .content {
  position: relative;
  z-index: 2;
}
.header-page .link-header-page {
  text-decoration: none;
  color: #fff;
  padding-right: 10px;
}
.team-box {
  border: 1px solid #C5C5C5;
  border-radius: 5px;
  padding: 50px;
  display: grid;
  grid-template-columns: 281px auto;
  gap: 40px;
  margin-bottom: 40px;
  transition: box-shadow 0.3s;
}
.team-box:hover {
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2);
}
.team-box .image {
  height: 281px;
  background-size: cover;
  border-radius: 5px;
  overflow: hidden;
}
.team-box .title {
  font-size: 24px;
  color: #5E82A5;
}
.team-box .subtitle {
  color: #8c8c8c;
}
.team-box .text {
  color: #8c8c8c;
}
@media (max-width: 961px) {
  .team-box {
    display: flex;
    flex-direction: column;
  }
  .team-box .image {
    width: 100%;
    background-size: cover !important;
  }
}
.acting-box {
  border: 1px solid #C5C5C5;
  border-radius: 5px;
  padding: 50px;
  margin-bottom: 40px;
  transition: box-shadow 0.3s;
}
.acting-box:hover {
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2);
}
.acting-box .area {
  font-size: 20px;
  font-weight: 800;
  color: #2C3A4B;
}
.acting-box .text {
  color: #8c8c8c;
  line-height: 2em;
}
.post-box {
  border: 1px solid #C5C5C5;
  border-radius: 5px;
  padding: 50px;
  display: grid;
  grid-template-columns: auto 415px ;
  gap: 40px;
  align-items: center;
  margin-bottom: 40px;
  transition: box-shadow 0.3s;
}
.post-box:hover {
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2);
}
.post-box .image {
  height: 329px;
  background-size: cover;
  overflow: hidden;
}
.post-box .title {
  font-size: 24px;
  color: #5E82A5;
}
.post-box .subtitle {
  color: #8c8c8c;
}
.post-box .text {
  color: #555555;
}
@media (max-width: 961px) {
  .post-box {
    display: flex;
    flex-direction: column-reverse;
  }
  .post-box .image {
    width: 100%;
  }
}
.post-text {
  color: #555555;
  line-height: 2.5em;
}
.post-text * {
  color: #555555;
  line-height: 2.5em;
}
/*Geral*/
.content {
  width: 1140px;
  margin: auto;
}
@media (max-width: 1141px) {
  .content {
    width: 97%;
  }
}
.cursor-pointer {
  cursor: pointer;
}
.padding-top-section {
  padding-top: 100px;
}
.margin-top-section {
  margin-top: 100px;
}
.padding-bottom-section {
  padding-bottom: 100px;
}
.margin-bottom-section {
  margin-bottom: 100px;
}
.title {
  font-size: 30px;
  font-weight: 800;
  line-height: 1.5em;
  margin-bottom: 15px;
}
.text {
  line-height: 1.5em;
}
.line-height-2-5 {
  line-height: 2.5em;
}
#site-header {
  background-color: #2C3A4B;
}
#site-header .content {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#site-header .content #principal-menu {
  display: flex;
  align-items: center;
  padding: 35px 0;
}
#site-header .content #principal-menu a {
  display: block;
  padding: 30px;
  text-decoration: none;
  color: #fff;
  font-weight: bold;
  transition: background-color 0.35s;
}
#site-header .content #principal-menu a:hover {
  background-color: #5E82A5;
}
/*Butons*/
.button-dark-grey {
  display: inline-block;
  border-radius: 5px;
  padding: 20px 40px !important;
  color: #fff;
  text-decoration: none;
  font-weight: 500;
  letter-spacing: .5px;
  font-size: .9em;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.button-dark-grey:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #2C3A4B;
  z-index: -2;
}
.button-dark-grey:before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 100%;
  background-color: #5E82A5;
  transition: all .3s;
  z-index: -1;
}
.button-dark-grey:hover:before {
  width: 100%;
}
.button-light-grey {
  display: inline-block;
  border-radius: 5px;
  padding: 20px 40px !important;
  color: #fff;
  text-decoration: none;
  font-weight: 500;
  letter-spacing: .5px;
  font-size: .9em;
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.button-light-grey:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #5E82A5;
  z-index: -2;
}
.button-light-grey:before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 100%;
  background-color: #4B6176;
  transition: all .3s;
  z-index: -1;
}
.button-light-grey:hover:before {
  width: 100%;
}
.pagination {
  display: flex;
  align-items: center;
}
.pagination a {
  display: inline-block;
  border-radius: 5px;
  padding: 5px 10px;
  color: #fff;
  text-decoration: none;
  font-weight: 500;
  letter-spacing: .5px;
  font-size: .9em;
  position: relative;
  overflow: hidden;
  margin: 0 5px;
  z-index: 1;
}
.pagination a:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #5E82A5;
  z-index: -2;
}
.pagination a:before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 100%;
  background-color: #4B6176;
  transition: all .3s;
  z-index: -1;
}
.pagination a:hover:before {
  width: 100%;
}
.pagination .active {
  display: inline-block;
  background-color: #4B6176;
  border-radius: 5px;
  padding: 5px 10px;
  color: #fff;
  text-decoration: none;
  font-weight: 500;
  letter-spacing: .5px;
  font-size: .9em;
  position: relative;
  overflow: hidden;
  margin: 0 5px;
  z-index: 1;
  margin-top: -5px;
}
.button-simple-dark-grey {
  padding: 15px 25px;
  color: #ffffff;
  text-decoration: none;
  font-size: .85em;
  background-color: #2C3A4B;
  border-radius: 5px;
  transition: background-color 0.3s;
}
.button-simple-dark-grey:hover {
  background-color: #4B6176;
}
.button-simple-light-grey {
  border: none;
  padding: 15px 25px;
  color: #ffffff;
  text-decoration: none;
  font-size: .85em;
  background-color: #5E82A5;
  border-radius: 5px;
  transition: background-color 0.3s;
}
.button-simple-light-grey:hover {
  background-color: #4B6176;
  cursor: pointer;
}
/*Home*/
#banner-section {
  background: url(../images/fundo-home.jpg) no-repeat 50% 50% fixed;
  background-size: cover;
}
#banner-section .content {
  padding: 200px 0;
  display: grid;
  grid-auto-columns: 50% 50%;
}
#banner-section .content .banner-title {
  font-size: 38px;
  color: #fff;
  margin-bottom: 15px;
  font-weight: 700;
  line-height: 1.5em;
}
#banner-section .content .text {
  color: #fff;
  line-height: 1.5em;
  margin-bottom: 30px;
}
@media (max-width: 961px) {
  #banner-section .content {
    display: block;
  }
}
#atuacoes-home-section #container-atuacao .content {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
  gap: 20px;
}
#atuacoes-home-section #container-atuacao .box-atuacao {
  display: grid;
  grid-template-columns: 40px auto;
  border: 1px solid #e6e6e6;
  padding: 50px;
}
#atuacoes-home-section #container-atuacao .box-atuacao .title {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 15px;
  color: #4B6176;
}
#atuacoes-home-section #container-atuacao .box-atuacao .text {
  color: #5E82A5;
}
#team-section {
  background-color: #2C3A4B;
}
#team-section .content {
  display: grid;
  grid-template-columns: 47% 50%;
  gap: 60px;
}
#team-section .content img {
  max-width: 100%;
}
@media (max-width: 1025px) {
  #team-section .content {
    display: block;
  }
  #team-section .content img {
    min-width: 100%;
  }
  #team-section .content div {
    margin-bottom: 15px;
  }
}
#latest-posts-section .content #container-posts {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 20px;
}
#latest-posts-section .content #container-posts .latest-post-box {
  border-radius: 5px;
  overflow: hidden;
  box-shadow: 0 3px 40px rgba(36, 36, 36, 0.1);
  transition: box-shadow 0.3s;
}
#latest-posts-section .content #container-posts .latest-post-box:hover {
  box-shadow: 2px 4px 10px 0 rgba(0, 0, 0, 0.1);
}
#latest-posts-section .content #container-posts .latest-post-box img {
  max-width: 100%;
}
#latest-posts-section .content #container-posts .latest-post-box .title-post-card {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.5em;
  margin-bottom: 10px;
}
#latest-posts-section .content #container-posts .latest-post-box .text {
  color: #8c8c8c;
  line-height: 1.7em;
  font-size: .9em;
}
#footer {
  background-color: #2C3A4B;
  color: #fff;
}
#footer .content {
  display: grid;
  grid-template-columns: 50% 50%;
}
#footer .content #footer-menu a {
  display: block;
  color: #fff;
  padding: 6px 0;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
}
#footer .content #social-media-icons-footer {
  display: grid;
  grid-template-columns: 36px 36px 36px;
  gap: 10px;
}
#footer .content .social-media-footer {
  display: inline-block;
  color: #1569AE;
  text-decoration: none;
  background-color: #fff;
  padding: 4px 8px;
  border-radius: 5px;
  font-size: 21px;
  transition: all .3s;
}
#footer .content .social-media-footer:hover {
  background-color: #4B6176;
  color: #fff;
}
@media (max-width: 761px) {
  #footer .content {
    display: block;
  }
  #footer .content article {
    margin-bottom: 20px;
  }
}
#white-backgroud {
  background-color: #fff;
  padding: 40px 0;
}
#white-backgroud .content {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media (max-width: 761px) {
  #white-backgroud .content {
    display: block;
  }
  #white-backgroud .content article {
    margin-bottom: 20px;
  }
}
/*Sobre Nós*/
#section-fale-com-advogado {
  background-color: #424e5d;
}
#section-fale-com-advogado .content {
  display: grid;
  grid-template-columns: 50%;
}
@media (max-width: 761px) {
  #section-fale-com-advogado .content {
    display: grid;
    grid-template-columns: 100%;
  }
}
/*Blog*/
/*Contato*/
#contact-section .content {
  display: grid;
  grid-template-columns: 380px auto;
  gap: 40px;
}
#contact-section .content #box-form-contato {
  padding: 50px;
  box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.07);
}
#contact-section .content #box-form-contato .box-input {
  margin-bottom: 30px;
}
#contact-section .content #box-form-contato input,
#contact-section .content #box-form-contato select {
  width: 100%;
  border-top-width: 0;
  border-left-width: 0;
  border-right-width: 0;
  border-bottom: 1px solid #2C3A4B;
  padding: 7px 20px;
  height: 59px;
  transition: border .3s;
}
#contact-section .content #box-form-contato input:focus,
#contact-section .content #box-form-contato select:focus {
  border-top: 1px solid #efefef;
  border-left: 1px solid #efefef;
  border-right: 1px solid #efefef;
}
#contact-section .content #box-form-contato .error-message {
  color: #e13022;
  padding: 2px 20px;
}
#contact-section .content #box-form-contato textarea {
  width: 100%;
  border-top-width: 0;
  border-left-width: 0;
  border-right-width: 0;
  border-bottom: 1px solid #2C3A4B;
  padding: 7px 20px;
  transition: border .3s;
}
#contact-section .content #box-form-contato textarea:focus {
  border-top: 1px solid #efefef;
  border-left: 1px solid #efefef;
  border-right: 1px solid #efefef;
}
@media (max-width: 961px) {
  #contact-section .content {
    display: block;
  }
  #contact-section .content .dados-contato {
    margin-bottom: 40px;
  }
}
#map-section {
  width: 100%;
  border: none;
}
#map-section iframe {
  width: 100%;
  height: 400px;
  border: none;
}
/*-------------------------------*/
/*Menu Mobile*/
#box-bt-menu-fechar {
  display: none;
  padding: 20px 0;
}
#box-bt-menu-fechar #bt-abrir-menu-mobile,
#box-bt-menu-fechar #bt-abrir-menu-mobile2 {
  font-size: 2em;
  color: #5E82A5;
  border-radius: 4px;
  padding: 40px 0;
}
#box-bt-menu-fechar #bt-abrir-menu-mobile:hover,
#box-bt-menu-fechar #bt-abrir-menu-mobile2:hover {
  cursor: pointer;
}
#menu-mobile {
  position: fixed;
  width: 300px;
  height: 100%;
  background: #4B6176;
  padding-top: 30px;
  color: #fff;
  z-index: 15;
  top: 0;
  right: 0;
  transition: .35s;
}
#menu-mobile .container {
  width: 100%;
}
#menu-mobile .links-barra-superior {
  display: block;
}
#menu-mobile .links-barra-superior li {
  border: none;
  padding: 0;
}
#menu-mobile .links-barra-superior li div {
  margin-bottom: 0;
}
#menu-mobile .links-barra-superior a {
  display: block;
  padding: 10px 10px 10px 25px;
  color: #fff;
  text-decoration: none;
  transition: all .35s;
}
#menu-mobile .links-barra-superior a:hover {
  background: #2C3A4B;
  color: #fff;
}
#menu-mobile li {
  border-bottom: 1px dashed #5E82A5;
  transition: .35s;
}
#menu-mobile li:hover {
  background: #2C3A4B;
  color: #fff;
}
#menu-mobile li:hover a {
  color: #fff;
}
#menu-mobile li a {
  text-decoration: none;
  color: #fff;
  display: block;
  padding: 15px 10px 15px 25px;
}
#fechar-menu-mobile {
  padding: 0px 10px 10px 25px;
}
#fechar-menu-mobile:hover {
  cursor: pointer;
}
#fechar-menu-mobile .material-icons {
  font-size: 2em;
}
.menu-mobile-fecado {
  margin-right: -300px;
}
.menu-mobila-aberto {
  margin-right: 0;
}
@media (max-width: 961px) {
  #site-header .content #container-menu {
    display: none;
  }
  #box-bt-menu-fechar {
    display: block;
  }
}
